home *** CD-ROM | disk | FTP | other *** search
/ Professional Soft Collection 1.02 / Professional Soft Collection 1.02.iso / archivat / rar153 / technote.doc < prev    next >
Text File  |  1996-01-26  |  9KB  |  274 lines

  1.  
  2.  ██████╗   █████╗  ██████╗
  3.  ██╔══██╗ ██╔══██╗ ██╔══██╗     RAR óÑαß¿∩ 1.53 - ÆÑσ¡¿τÑ߬á∩ ¿¡Σ«α¼áµ¿∩
  4.  ██████╔╝ ███████║ ██████╔╝     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  5.  ██╔══██╗ ██╔══██║ ██╔══██╗      ┌───────────────────────────────────────┐
  6.  ██║  ██║ ██║  ██║ ██║  ██║      │ Åôüïêèôàî¢ë öÄÉîÇÆ ÇÉòêéÇ êæÅÄï£çôàÆæƒ│
  7.  ╚═╝  ╚═╝ ╚═╝  ╚═╝ ╚═╝  ╚═╝      │      é RAR ìÇùêìǃ æ éàÉæêê 1.50      │
  8.                                  └───────────────────────────────────────┘
  9.  
  10.  ╔════════════════════════════════════════════════════════════════════════╗
  11.  ║▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  ö«α¼áΓ áασ¿óá RAR  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒║
  12.  ╚════════════════════════════════════════════════════════════════════════╝
  13.  
  14.    1.1. ÄíΘá∩ ßΓαπ¬Γπαá áασ¿óá
  15.  
  16.    Çασ¿ó ß«ßΓ«¿Γ ¿º í½«¬«ó »ÑαѼѡ¡«⌐ ñ½¿¡δ. êσ »«α∩ñ«¬ ¼«ªÑΓ íδΓ∞
  17.    »α«¿ºó«½∞¡δ¼, úáαá¡Γ¿απÑΓß∩ Γ«½∞¬« Γ«, τΓ« »Ñαóδ¼ ∩ó½∩ÑΓß∩ ¼áα¬Ñα¡δ⌐
  18.    í½«¬, á ºá ¡¿¼ ¿ñÑΓ í½«¬ ºáú«½«ó¬á áασ¿óá.
  19.  
  20.    é ¡áτá½Ñ ¬áªñ«ú« í½«¬á »α¿ßπΓßΓóπεΓ ß½ÑñπεΘ¿Ñ »«½∩:
  21.  
  22.    HEAD_CRC       2 íá⌐Γá     è«¡Γα«½∞¡á∩ ßπ¼¼á óßÑú« ¿½¿ τáßΓ¿ í½«¬á
  23.    HEAD_TYPE      1 íá⌐Γ      Æ¿» í½«¬á
  24.    HEAD_FLAGS     2 íá⌐Γá     ÇΓα¿íπΓδ í½«¬á
  25.    HEAD_SIZE      2 íá⌐Γá     ÉẼÑα í½«¬á
  26.    ----------------------
  27.    ADD_SIZE       4 íá⌐Γá     ä«»«½¡¿Γѽ∞¡«Ñ »«½Ñ αẼÑαá í½«¬á
  28.  
  29.    Å«½Ñ ADD_SIZE »α¿ßπΓßΓóπÑΓ Γ«½∞¬« Ñß½¿ (HEAD_FLAGS & 0x8000) != 0
  30.  
  31.    Å«½¡δ⌐ αẼÑα í½«¬á αáóÑ¡ HEAD_SIZE, Ñß½¿ »«½Ñ ADD_SIZE «ΓßπΓßΓóπÑΓ ¿
  32.    HEAD_SIZE+ADD_SIZE, Ñß½¿ »«½Ñ ADD_SIZE »α¿ßπΓßΓóπÑΓ.
  33.  
  34.    ä½∩ óßÑσ í½«¬«ó «ñ¿¡á¬«ó«Ñ º¡áτÑ¡¿Ñ ¿¼ÑεΓ ß½ÑñπεΘ¿Ñ í¿Γδ HEAD_FLAGS:
  35.  
  36.    0x4000 - Ñß½¿ φëàí¿Γ πßΓá¡«ó½Ñ¡, Γ« »αÑñδñπΘ¿Ñ óÑαß¿¿ RAR, ¬«Γ«αδÑ
  37.             ¡Ñ º¡áεΓ, ¬á¬ «íαáíáΓδóáΓ∞ ñá¡¡δ⌐ í½«¬, íπñπΓ πñá½∩Γ∞ Ñú«
  38.             »α¿ ó¡ÑßÑ¡¿¿ ¿º¼Ñ¡Ñ¡¿⌐ ó áασ¿ó. àß½¿ φëàí¿Γ ßíα«ΦÑ¡, Γ«
  39.             í½«¬ íπñÑΓ »ÑαÑ¡«ß¿Γß∩ ó ¡«óδ⌐ áασ¿ó.
  40.  
  41.    0x8000 - Ñß½¿ φëàí¿Γ πßΓá¡«ó½Ñ¡, Γ« »α¿ßπΓßΓóπÑΓ »«½Ñ ADD_SIZE, ¿
  42.             »«½¡á∩ ñ½¿¡á í½«¬á αáó¡∩ÑΓß∩ HEAD_SIZE+ADD_SIZE
  43.  
  44.    é ¡áßΓ«∩ΘÑÑ óαѼ∩ «»αÑñѽѡδ ß½ÑñπεΘ¿Ñ Γ¿»δ í½«¬«ó:
  45.  
  46.    HEAD_TYPE=0x72          ¼áα¬Ñα¡δ⌐ í½«¬
  47.    HEAD_TYPE=0x73          ºáú«½«ó«¬ áασ¿óá
  48.    HEAD_TYPE=0x74          ºáú«½«ó«¬ Σá⌐½á
  49.    HEAD_TYPE=0x75          ºáú«½«ó«¬ ¬«¼¼Ñ¡Γáα¿∩
  50.    HEAD_TYPE=0x76          ñ«»«½¡¿Γѽ∞¡á∩ ¿¡Σ«α¼áµ¿∩
  51.  
  52.    ü½«¬ ¬«¼¼Ñ¡Γáα¿∩ ó ¡áßΓ«∩ΘÑÑ óαѼ∩ ¿ß»«½∞ºπÑΓß∩ Γ«½∞¬« ó ß«ßΓáóÑ
  53.    ñαπú¿σ í½«¬«ó ¿ ó ßἫßΓ«∩Γѽ∞¡«¼ ó¿ñÑ ¡Ñ óßΓαÑτáÑΓß∩.
  54.  
  55.    Éáí«Γá ß áασ¿ó«¼ ¼«ªÑΓ »α«σ«ñ¿Γ∞ »« ß½ÑñπεΘѼπ á½ú«α¿Γ¼π:
  56.  
  57.    1. ù¿ΓáѼ ¿ »α«óÑα∩Ѽ ¼áα¬Ñα¡δ⌐ í½«¬
  58.    2. ù¿ΓáѼ ºáú«½«ó«¬ áασ¿óá
  59.    3. ù¿ΓáѼ ¿½¿ »α«»π߬áѼ HEAD_SIZE-sizeof(MAIN_HEAD) íá⌐Γ
  60.    4. àß½¿ ¬«¡Ñµ áασ¿óá, Γ« «íαáí«Γ¬á ºá¬«¡τÑ¡á,
  61.       ¿¡áτÑ τ¿ΓáѼ 7 íá⌐Γ ó »«½∩ HEAD_CRC, HEAD_TYPE, HEAD_FLAGS,
  62.       HEAD_SIZE.
  63.    5. Ç¡á½¿º¿απѼ HEAD_TYPE.
  64.       àß½¿ ΓαÑíπÑΓß∩ »α«τÑßΓ∞ í½«¬
  65.             Ñß½¿ HEAD_TYPE==0x74
  66.               τ¿ΓáѼ ºáú«½«ó«¬ Σá⌐½á ( »ÑαóδÑ 7 íá⌐Γ πªÑ »α«τ¿Γá¡δ )
  67.               τ¿ΓáѼ ¿½¿ »α«»π߬áѼ HEAD_SIZE-sizeof(FILE_HEAD) íá⌐Γ
  68.               τ¿ΓáѼ ¿½¿ »α«»π߬áѼ FILE_SIZE íá⌐Γ
  69.             ¿¡áτÑ
  70.               τ¿ΓáѼ ß««ΓóÑΓßΓóπεΘ¿⌐ HEAD_TYPE í½«¬:
  71.                 τ¿ΓáѼ HEAD_SIZE-7 íá⌐Γ
  72.                 Ñß½¿ (HEAD_FLAGS & 0x8000)
  73.                   τ¿ΓáѼ ADD_SIZE íá⌐Γ
  74.       ¿¡áτÑ
  75.             »α«»π߬áѼ HEAD_SIZE-7 íá⌐Γ
  76.             Ñß½¿ (HEAD_FLAGS & 0x8000)
  77.               »α«»π߬áѼ ADD_SIZE íá⌐Γ
  78.    6. »ÑαÑσ«ñ¿¼ ¬ Φáúπ 4
  79.  
  80.  
  81.  ╔════════════════════════════════════════════════════════════════════════╗
  82.  ║▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  ö«α¼áΓδ í½«¬«ó  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒║
  83.  ╚════════════════════════════════════════════════════════════════════════╝
  84.  
  85.    1.2.1. îáα¬Ñα¡δ⌐ í½«¬ ( MARK_HEAD )
  86.  
  87.    HEAD_CRC        éßÑúñá αáó¡á 0x6152
  88.    2 íá⌐Γá
  89.  
  90.    HEAD_TYPE       Æ¿» ºáú«½«ó¬á: 0x72
  91.    1 íá⌐Γ
  92.  
  93.    HEAD_FLAGS      éßÑúñá αáó¡δ 0x1a21
  94.    2 íá⌐Γá
  95.  
  96.    HEAD_SIZE       ÉẼÑα í½«¬á, αáóÑ¡ 0x0007
  97.    2 íá⌐Γá
  98.  
  99.    Æᬿ¼ «íαẫ¼ ¼áα¬Ñα¡δ⌐ í½«¬ ¼«ª¡« αáßß¼áΓα¿óáΓ∞ ¬á¬ Σ¿¬ß¿α«óá¡¡πε
  100.    »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ íá⌐Γ: 0x52 0x61 0x72 0x21 0x1a 0x07 0x00
  101.  
  102.  
  103.    1.2.2. çáú«½«ó«¬ áασ¿óá ( MAIN_HEAD )
  104.  
  105.  
  106.    HEAD_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á »«½Ñ⌐ ß HEAD_TYPE »«
  107.    2 íá⌐Γá         RESERVED2
  108.  
  109.  
  110.    HEAD_TYPE       Æ¿» ºáú«½«ó¬á: 0x73
  111.    1 íá⌐Γ
  112.  
  113.    HEAD_FLAGS      ìáí«α Σ½áú«ó:
  114.    2 íá⌐Γá
  115.                    0x01    - »α¿º¡á¬ Volume (áασ¿ó¡δ⌐ Γ«¼)
  116.                    0x02    - »α¿ßπΓßΓóπÑΓ ¬«¼¼Ñ¡Γáα¿⌐ ¬ áασ¿óπ
  117.                    0x04    - áασ¿ó ºáΘ¿ΘÑ¡ «Γ ¼«ñ¿Σ¿¬áµ¿¿
  118.                    0x08    - »α¿º¡á¬ Solid (¡Ñ»αÑαδó¡δ⌐ áασ¿ó)
  119.                    0x10    - ¡Ñ ¿ß»«½∞ºπÑΓß∩
  120.                    0x20    - áασ¿ó ß«ñÑαª¿Γ áóΓ«α߬πε ¬«¡Γα«½∞¡πε
  121.                              ¿¡Σ«α¼áµ¿ε (authenticity verification)
  122.  
  123.                    «ßΓá½∞¡δÑ í¿Γδ ¼«úπΓ ¿ß»«½∞º«óáΓ∞ß∩ ñ½∩
  124.                    ó¡πΓαÑ¡¡¿σ µÑ½Ñ⌐
  125.  
  126.    HEAD_SIZE       Å«½¡á∩ ñ½¿¡á ºáú«½«ó¬á áασ¿óá, ó¬½ετá∩ ¬«¼¼Ñ¡Γáα¿¿
  127.    2 íá⌐Γá         ¬ áασ¿óπ ¿ »α«τ¿Ñ ñ«»«½¡¿Γѽ∞¡δÑ »«½∩
  128.  
  129.    RESERVED1       çáαѺÑαó¿α«óá¡δ
  130.    2 íá⌐Γá
  131.  
  132.    RESERVED2       çáαѺÑαó¿α«óá¡δ
  133.    4 íá⌐Γá
  134.  
  135.  
  136.    ü½«¬ ¬«¼¼Ñ¡Γáα¿∩ - »α¿ßπΓßΓóπÑΓ, Ñß½¿ (HEAD_FLAGS & 0x02) != 0
  137.  
  138.  
  139.    ????            Åα«τ¿Ñ ó½«ªÑ¡¡δÑ í½«¬¿ - ó ñá¡¡«⌐ óÑαß¿¿
  140.                    «ΓßπΓßΓóπεΓ
  141.  
  142.  
  143.    1.2.3. çáú«½«ó«¬ Σá⌐½á ó áασ¿óÑ
  144.  
  145.    HEAD_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á »«½Ñ⌐ ß HEAD_TYPE »« FILEATTR
  146.    2 íá⌐Γá         ¿ ¿¼Ñ¡¿ Σá⌐½á
  147.  
  148.    HEAD_TYPE       Æ¿» ºáú«½«ó¬á: 0x74
  149.    1 íá⌐Γ
  150.  
  151.    HEAD_FLAGS      ìáí«α Σ½áú«ó:
  152.    2 íá⌐Γá
  153.                    0x01 - Σá⌐½ »α«ñ«½ªáÑΓß∩ ß »αÑñδñπΘÑú« Γ«¼á
  154.                    0x02 - Σá⌐½ »α«ñ«½ªáÑΓß∩ ó ß½ÑñπεΘѼ Γ«¼Ñ
  155.                    0x04 - Σá⌐½ ºáΘ¿ΘÑ¡ ß »«¼«Θ∞ε »áα«½∩
  156.                    0x08 - »α¿ßπΓßΓóπÑΓ ¬«¼¼Ñ¡Γáα¿⌐ ¬ Σá⌐½π
  157.  
  158.                    (HEAD_FLAGS & 0x8000) == 1, Γᬠ¬á¬ »«½¡δ⌐
  159.                    αẼÑα í½«¬á αáóÑ¡ HEAD_SIZE + PACK_SIZE
  160.  
  161.    HEAD_SIZE       Å«½¡á∩ ñ½¿¡á ºáú«½«ó¬á Σá⌐½á, ó¬½ετá∩ ¿¼∩ Σá⌐½á,
  162.    2 íá⌐Γá         ¬«¼¼Ñ¡Γáα¿¿ ¿ »α«τ¿Ñ ñ«»«½¡¿Γѽ∞¡δÑ »«½∩
  163.  
  164.    PACK_SIZE       ÉẼÑα Σá⌐½á ó ßªáΓ«¼ ó¿ñÑ
  165.    4 íá⌐Γá
  166.  
  167.    UNP_SIZE        êßσ«ñ¡δ⌐ αẼÑα Σá⌐½á
  168.    4 íá⌐Γá
  169.  
  170.    HOST_OS         Ä»Ñαᵿ«¡¡á∩ ß¿ßΓѼá, ó ¬«Γ«α«⌐ íδ½ π»á¬«óá¡ Σá⌐½
  171.    1 íá⌐Γ          0 - MS DOS
  172.  
  173.    FILE_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á Σá⌐½á
  174.    4 íá⌐Γá
  175.  
  176.    FTIME           äáΓá ¿ óαѼ∩ Σá⌐½á ó ßΓá¡ñáαΓ¡«¼ Σ«α¼áΓÑ MS DOS
  177.    4 íá⌐Γá
  178.  
  179.    UNP_VER         éÑαß¿∩ RAR, ΓαÑíπѼá∩ ñ½∩ αá߻ᬫ󬿠Σá⌐½á
  180.    1 íá⌐Γ
  181.  
  182.    METHOD          îÑΓ«ñ ßªáΓ¿∩
  183.    1 íá⌐Γ
  184.  
  185.    NAME_SIZE       ä½¿¡á ¿¼Ñ¡¿ Σá⌐½á
  186.    2 íá⌐Γá
  187.  
  188.    ATTR            ÇΓα¿íπΓδ Σá⌐½á
  189.    4 íá⌐Γá
  190.  
  191.    FILE_NAME       ê¼∩ Σá⌐½á - ßΓ᫬á ñ½¿¡«⌐ NAME_LEN
  192.  
  193.  
  194.    ü½«¬ ¬«¼¼Ñ¡Γáα¿∩ - »α¿ßπΓßΓóπÑΓ, Ñß½¿ (HEAD_FLAGS & 0x08) != 0
  195.  
  196.  
  197.    ????            Åα«τ¿Ñ ó½«ªÑ¡¡δÑ í½«¬¿ - ó ñá¡¡«⌐ óÑαß¿¿
  198.                    «ΓßπΓßΓóπεΓ
  199.  
  200.  
  201.    1.2.4. ü½«¬ ¬«¼¼Ñ¡Γáα¿∩
  202.  
  203.    HEAD_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á »«½Ñ⌐ ß HEAD_TYPE »« COMM_CRC
  204.    2 íá⌐Γá
  205.  
  206.    HEAD_TYPE       Æ¿» ºáú«½«ó¬á: 0x75
  207.    1 íá⌐Γ
  208.  
  209.    HEAD_FLAGS      ìáí«α Σ½áú«ó
  210.    2 íá⌐Γá
  211.  
  212.    HEAD_SIZE       ä½¿¡á ºáú«½«ó¬á ¬«¼¼Ñ¡Γáα¿∩ + ñ½¿¡á ¬«¼¼Ñ¡Γáα¿∩
  213.    2 íá⌐Γá
  214.  
  215.    UNP_SIZE        ìÑπ»á¬«óá¡¡δ⌐ αẼÑα ¬«¼¼Ñ¡Γáα¿∩
  216.    2 íá⌐Γá
  217.  
  218.    UNP_VER         éÑαß¿∩ RAR, ΓαÑíπѼá∩ ñ½∩ αá߻ᬫ󬿠¬«¼¼Ñ¡Γáα¿∩
  219.    1 íá⌐Γ
  220.  
  221.    METHOD          îÑΓ«ñ ßªáΓ¿∩
  222.    1 íá⌐Γ
  223.  
  224.    COMM_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á ¬«¼¼Ñ¡Γáα¿∩
  225.    2 íá⌐Γá
  226.  
  227.    COMMENT         è«¼¼Ñ¡Γáα¿⌐
  228.  
  229.  
  230.  
  231.    1.2.5. ü½«¬ ñ«»«½¡¿Γѽ∞¡«⌐ ¿¡Σ«α¼áµ¿¿
  232.  
  233.    HEAD_CRC        è«¡Γα«½∞¡á∩ ßπ¼¼á í½«¬á
  234.    2 íá⌐Γá
  235.  
  236.    HEAD_TYPE       Æ¿» ºáú«½«ó¬á: 0x76
  237.    1 íá⌐Γ
  238.  
  239.    HEAD_FLAGS      ìáí«α Σ½áú«ó
  240.    2 íá⌐Γá
  241.  
  242.    HEAD_SIZE       Å«½¡á∩ ñ½¿¡á í½«¬á
  243.    2 íá⌐Γá
  244.  
  245.    INFO            Åα«τ¿Ñ ñá¡¡δÑ
  246.  
  247.  
  248.  ╔════════════════════════════════════════════════════════════════════════╗
  249.  ║▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒  çá¼Ñτá¡¿∩ ñ½∩ αáºαáí«Γτ¿¬«ó  ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒║
  250.  ╚════════════════════════════════════════════════════════════════════════╝
  251.  
  252.    1. Åα¿ »«∩ó½Ñ¡¿¿ ñ«»«½¡¿Γѽ∞¡δσ »«½Ñ⌐ ¿ ó½«ªÑ¡¡δσ í½«¬«ó ó ºáú«½«ó¬áσ,
  253.    ¿σ ñ½¿¡á íπñÑΓ πτ¿ΓδóáΓ∞ß∩ ó HEAD_SIZE.
  254.  
  255.    2. ä½∩ «íαáí«Γ¬¿ SFX áασ¿óá ¡Ñ«íσ«ñ¿¼« »α«»πßΓ¿Γ∞ SFX ¼«ñπ½∞ »πΓѼ
  256.    »«¿ß¬á »« áασ¿óπ ¼áα¬Ñα¡«ú« í½«¬á. âáαá¡Γ¿απÑΓß∩, τΓ« ó ßἫ¼ SFX
  257.    ¼«ñπ½Ñ »«ß½Ññ«óáΓѽ∞¡«ßΓ∞ íá⌐Γ 0x52 0x61 0x72 0x21 0x1a 0x07 0x00 ¡Ñ
  258.    óßΓαÑτáÑΓß∩.
  259.  
  260.    3. è«¡Γα«½∞¡á∩ ßπ¼¼á óδτ¿ß½∩ÑΓß∩ »« ßΓá¡ñáαΓ¡«¼π á½ú«α¿Γ¼π, ß
  261.    »«α«ªñáεΘ¿¼ »«½¿¡«¼«¼ 0xEDB88320. é ΓÑσ ß½πτá∩σ, ¬«úñá ñ½¿¡á
  262.    ¬«¡Γα«½∞¡«⌐ ßπ¼¼δ ¼Ñ¡∞ΦÑ 4 íá⌐Γ, ¿ß»«½∞ºπεΓß∩ ÑÑ ¼½áñΦ¿Ñ íá⌐Γδ.
  263.  
  264.    4. îÑΓ«ñ ßªáΓ¿∩ ¬«ñ¿απÑΓß∩ ß½ÑñπεΘ¿¼ «íαẫ¼:
  265.          0x30 - storing
  266.          0x31 - fastest compression
  267.          0x32 - fast compression
  268.          0x33 - normal compression
  269.          0x34 - good compression
  270.          0x35 - best compression
  271.  
  272.    5. àß½¿ αáºñѽ¿Γ∞ »«½Ñ UNP_VER ¡á 10, »«½πτáÑΓß∩ ßΓáαΦá∩ µ¿Σαá óÑαß¿¿
  273.    RAR, ¡Ñ«íσ«ñ¿¼«⌐ ñ½∩ αá߻ᬫó¬¿. é «ßΓáΓ¬Ñ íπñÑΓ ¼½áñΦá∩ µ¿Σαá.
  274.